package pagecode;

import java.util.Map;

import javax.faces.application.FacesMessage;
import javax.faces.context.FacesContext;
import javax.servlet.http.HttpSession;

import beans.Usuario;

@SuppressWarnings({"deprecation","unchecked"})
public class PaginaBase {
	HttpSession session;
	Map requestParam;
	FacesContext facesContext;
	
	public PaginaBase(String str)
	{
		facesContext = FacesContext.getCurrentInstance();
		session = ( HttpSession ) facesContext.getExternalContext().getSession( true );
		requestParam = (Map)facesContext.getApplication().createValueBinding("#{param}").getValue(facesContext);
	}
	
	public PaginaBase()
	{
		this("");
		if(session.getAttribute("usuario") == null)
		{
			throw new SecurityException();
		}
	}
	
	public void addErrorMsg(String msg)
	{
		facesContext.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_ERROR, msg, msg));
	}
	
	public void addWarnMsg(String msg)
	{
		facesContext.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_WARN, msg, msg));
	}
	
	public void addSuccessMsg(String msg)
	{
		facesContext.addMessage(null, new FacesMessage(FacesMessage.SEVERITY_INFO, msg, msg));
	}
	
	public String sair()
	{
		session.setAttribute("usuario", null);
		return "login";
	}
	
	public Usuario getUsuario() {
		
		return (Usuario)session.getAttribute("usuario");
	}

}
